home *** CD-ROM | disk | FTP | other *** search
/ EnigmA Amiga Run 1996 February / EnigmA AMIGA RUN 04 (1996)(G.R. Edizioni)(IT)[!][issue 1996-02][Skylink CD III].iso / earcd / program / esyrxv30.lha / EasyRexx / Includes / Modula-2 / Assembly3.def next >
Text File  |  1993-11-03  |  6KB  |  118 lines

  1.                                                                                 
  2. (*###########################*)
  3.  DEFINITION MODULE Assembly3;     (* v0.0-041785 *)
  4. (*###########################*)
  5. (*
  6.    (c) Copyright 1985 Tom Breeden, All Rights Reserved
  7.  
  8.                            Aglet Software
  9.                            PO Box 3314
  10.                            Charlottesville, VA 22903
  11. *)
  12.  
  13.   CONST
  14.      BitPos0  = 000001B; BitPos1  = 000002B; BitPos2  = 000004B;
  15.      BitPos3  = 000010B; BitPos4  = 000020B; BitPos5  = 000040B;
  16.      BitPos6  = 000100B; BitPos7  = 000200B; BitPos8  = 000400B;
  17.      BitPos9  = 001000B; BitPos10 = 002000B; BitPos11 = 004000B;
  18.      BitPos12 = 010000B; BitPos13 = 020000B; BitPos14 = 040000B;
  19.      BitPos15 = 100000B;
  20.                                                                                 
  21.      B6 = 000000B;  B12 = 010000B;  Lix = 4000B;
  22.      W6 = 000100B;  W12 = 030000B;  Wix =    0B;
  23.      L6 = 000200B;  L12 = 020000B;
  24.                                                                                 
  25.      D0 =  0;     D0b9 = 0000B;     D0ix =      0B;
  26.      D1 =  1;     D1b9 = 1000B;     D1ix =  10000B;
  27.      D2 =  2;     D2b9 = 2000B;     D2ix =  20000B;
  28.      D3 =  3;     D3b9 = 3000B;     D3ix =  30000B;
  29.      D4 =  4;     D4b9 = 4000B;     D4ix =  40000B;
  30.      D5 =  5;     D5b9 = 5000B;     D5ix =  50000B;
  31.      D6 =  6;     D6b9 = 6000B;     D6ix =  60000B;
  32.      D7 =  7;     D7b9 = 7000B;     D7ix =  70000B;
  33.                                                                                 
  34.      A0 =  0;     A0b9 = 0000B;     A0ix = 100000B;
  35.      A1 =  1;     A1b9 = 1000B;     A1ix = 110000B;
  36.      A2 =  2;     A2b9 = 2000B;     A2ix = 120000B;
  37.      A3 =  3;     A3b9 = 3000B;     A3ix = 130000B;
  38.      A4 =  4;     A4b9 = 4000B;     A4ix = 140000B;
  39.      A5 =  5;     A5b9 = 5000B;     A5ix = 150000B;
  40.      A6 =  6;     A6b9 = 6000B;     A6ix = 160000B;
  41.      A7 =  7;     A7b9 = 7000B;     A7ix = 170000B;
  42.      SP = A7;     SPb9 = A7b9;
  43.                                                                                 
  44.   (*EA addr modes*)
  45.      DRdir  =  0B;   DRdirb6  =  000B;
  46.      ARdir  = 10B;   ARdirb6  =  100B;
  47.      ARind  = 20B;   ARindb6  =  200B;
  48.      ARindp = 30B;   ARindpb6 =  300B;
  49.      ARindm = 40B;   ARindmb6 =  400B;
  50.      ARdisp = 50B;   ARdispb6 =  500B;
  51.      ARinx  = 60B;   ARinxb6  =  600B;
  52.      AbsW   = 70B;   AbsWb6   =  700B;
  53.      AbsL   = 71B;   AbsLb6   = 1700B;
  54.      PCdisp = 72B;
  55.      PCinx  = 73B;
  56.      Imm    = 74B;
  57.                                                                                 
  58.   (*mnemonics*)
  59.      ORI       = 000000B;   ORIccr    = 000074B;    ORIsr     = 000174B;
  60.      BTSTdyn   = 000400B;   BCHGdyn   = 000500B;    BCLRdyn   = 000600B;
  61.      BSETdyn   = 000700B;   MOVEP     = 000010B;    ANDI      = 001000B;
  62.      ANDIccr   = 001074B;   ANDIsr    = 001174B;    SUBI      = 002000B;
  63.      ADDI      = 003000B;   BTSTstat  = 004000B;    BCHGstat  = 004100B;
  64.      BCLRstat  = 004200B;   BSETstat  = 004300B;    EORI      = 005000B;
  65.      EORIccr   = 005074B;   EORIsr    = 005174B;    CMPI      = 006000B;
  66.    (*MOVES     = 017000B;*) MOVE      = 000000B;    MOVEA     = 000100B;
  67.      NEGX      = 040000B;
  68.      MOVEfsr   = 040300B;   CHK       = 040600B;    LEA       = 040700B;
  69.      CLR       = 041000B; (*MOVEfccr  = 041300B;*)  NEG       = 042000B;
  70.      MOVEtccr  = 042300B;   NOTinstr  = 043000B;    MOVEtsr   = 043300B;
  71.      NBCD      = 044000B;   SWAP      = 044100B;    PEA       = 044100B;
  72.      EXTword   = 044200B;   MOVEMea   = 044200B;    EXTlong   = 044300B;
  73.      TST       = 045000B;   TAS       = 045300B;    ILLEGAL   = 045374B;
  74.      MOVEMreg  = 046200B;   TRAP      = 047100B;    LINK      = 047120B;
  75.      UNLK      = 047130B;   MOVEtusp  = 047140B;    MOVEfusp  = 047150B;
  76.      RESETinstr= 047160B;   NOP       = 047161B;    STOP      = 047162B;
  77.      RTE       = 047163B; (*RTD       = 047164B;*)  RTS       = 047165B;
  78.      TRAPV     = 047166B;   RTR       = 047167B;  (*MOVEC     = 047172B;*)
  79.      JSR       = 047200B;   JMP       = 047300B;    ADDQ      = 050000B;
  80.      Scc       = 050300B;   DBcc      = 050310B;    SUBQ      = 050400B;
  81.      Bcc       = 060000B;   BRA       = 060000B;    BSR       = 060400B;
  82.      MOVEQ     = 070000B;   ORdr      = 100000B;    ORea      = 100400B;
  83.      DIVU      = 100300B;   SBCD      = 100400B;    DIVS      = 100700B;
  84.      SUBdr     = 110000B;   SUBea     = 110400B;    SUBA      = 110300B;
  85.      SUBX      = 110400B;   LINE1010  = 120000B;    CMP       = 130000B;
  86.      CMPA      = 130300B;   EOR       = 130400B;    CMPM      = 130410B;
  87.      ANDdr     = 140000B;   ANDea     = 140400B;    MULU      = 140300B;
  88.      ABCD      = 140400B;   EXGdr     = 140500B;    EXGar     = 140510B;
  89.      EXGdrar   = 140610B;   MULS      = 140700B;    ADDdr     = 150000B;
  90.      ADDea     = 150400B;   ADDA      = 150300B;    ADDX      = 150400B;
  91.      ASRdr     = 160000B;   ASLdr     = 160400B;    LSRdr     = 160010B;
  92.      LSLdr     = 160410B;   ROXRdr    = 160020B;    ROXLdr    = 160420B;
  93.      RORdr     = 160030B;   ROLdr     = 160430B;    ASRea     = 160300B;
  94.      ASLea     = 160700B;   LSRea     = 161300B;    LSLea     = 161700B;
  95.      ROXRea    = 162300B;   ROXLea    = 162700B;    RORea     = 163300B;
  96.      ROLea     = 163700B;   LINE1111  = 170000B;
  97.                                                                                 
  98.   (* for <shift>dr instructions with shift count in reg *)
  99.      ShiftReg  = 40B;
  100.                                                                                 
  101.   (* Conditions for Bcc, DBcc, Scc *)
  102.      CC = 2000B; CS = 2400B; EQ = 3400B; GE = 6000B; GT = 7000B; HI = 1000B;
  103.      LE = 7400B; LS = 1400B; LT = 6400B; MI = 5400B; NE = 3000B; PL = 5000B;
  104.      VC = 4000B; VS = 4400B;  F = 0400B;  T = 0000B;
  105.      HS = CC;    LO = CS;
  106.                                                                                 
  107.   (* All branch instrs *)
  108.      BCC = 62000B;  BCS = 62400B;  BEQ = 63400B;  BGE = 66000B; BGT = 67000B;
  109.      BHI = 61000B;  BLE = 67400B;  BLS = 61400B;  BLT = 66400B; BMI = 65400B;
  110.      BNE = 63000B;  BPL = 65000B;  BVC = 64000B;  BVS = 64400B;
  111.      BLO = BCS;     BHS = BCC;
  112.                                                                                 
  113.                                                                                 
  114.     (* ModSysTrap = TRAP+4; p-System *)
  115.                                                                                 
  116. END Assembly3.
  117.  
  118.